package co.edu.usbcali.parcial3.dto;

import co.edu.usbcali.parcial3.Comprobante;
import co.edu.usbcali.presentation.backingBeans.ComprobanteView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;


/**
*
*
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public class ComprobanteDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    private String comValorPagado;
    private String usuCodigo_Usuario;
    private String comCodigo;
    private Date comFechaPago;
    private boolean rowSelected = false;
    private ComprobanteView comprobanteView;
    private Comprobante comprobante;

    public Comprobante getComprobante() {
        return comprobante;
    }

    public String listener_update(ActionEvent e) {
        try {
            comprobanteView.action_modifyWitDTO(((comCodigo == null) ||
                comCodigo.equals("")) ? null : new String(comCodigo),
                ((comFechaPago == null) || comFechaPago.equals("")) ? null
                                                                    : comFechaPago,
                ((comValorPagado == null) || comValorPagado.equals("")) ? null
                                                                        : new Long(
                    comValorPagado),
                ((usuCodigo_Usuario == null) || usuCodigo_Usuario.equals(""))
                ? null : new String(usuCodigo_Usuario));
            rowSelected = !rowSelected;
        } catch (Exception ex) {
            return "";
        }

        return "";
    }

    public void listener_cancel(ActionEvent e) {
        comCodigo = comprobante.getComCodigo().toString();
        comFechaPago = comprobante.getComFechaPago();
        comValorPagado = (comprobante.getComValorPagado() != null)
            ? comprobante.getComValorPagado().toString() : null;
        usuCodigo_Usuario = (comprobante.getUsuario().getUsuCodigo() != null)
            ? comprobante.getUsuario().getUsuCodigo().toString() : null;
        rowSelected = !rowSelected;
    }

    /**
    * <p>Bound to commandLink actionListener in the ui that renders/unrenders
        * the Object details for editing.</p>
        */
    public void toggleSelected(ActionEvent e) {
        comCodigo = comprobante.getComCodigo().toString();
        comFechaPago = comprobante.getComFechaPago();
        comValorPagado = (comprobante.getComValorPagado() != null)
            ? comprobante.getComValorPagado().toString() : null;
        usuCodigo_Usuario = (comprobante.getUsuario().getUsuCodigo() != null)
            ? comprobante.getUsuario().getUsuCodigo().toString() : null;
        rowSelected = !rowSelected;
    }

    public void setComprobante(Comprobante comprobante) {
        this.comprobante = comprobante;
    }

    public ComprobanteView getComprobanteView() {
        return comprobanteView;
    }

    public void setComprobanteView(ComprobanteView comprobanteView) {
        this.comprobanteView = comprobanteView;
    }

    public String getComValorPagado() {
        return comValorPagado;
    }

    public void setComValorPagado(String comValorPagado) {
        this.comValorPagado = comValorPagado;
    }

    public String getUsuCodigo_Usuario() {
        return usuCodigo_Usuario;
    }

    public void setUsuCodigo_Usuario(String usuCodigo_Usuario) {
        this.usuCodigo_Usuario = usuCodigo_Usuario;
    }

    public Date getComFechaPago() {
        return comFechaPago;
    }

    public void setComFechaPago(Date comFechaPago) {
        this.comFechaPago = comFechaPago;
    }

    public String getComCodigo() {
        return comCodigo;
    }

    public void setComCodigo(String comCodigo) {
        this.comCodigo = comCodigo;
    }

    public boolean isRowSelected() {
        return rowSelected;
    }

    public void setRowSelected(boolean rowSelected) {
        this.rowSelected = rowSelected;
    }
}
